package com.ia.aistream.service.dxfcomponent;

import java.io.UnsupportedEncodingException;
import java.util.List;

import com.ia.aistream.model.dxfcomponent.entity.DrawDxfComp;
import com.ia.aistream.model.dxfcomponent.entity.DxfComponent;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 * dxf文件部件Service接口
 * 
 * @author ymj
 * @date 2020-12-04
 */
public interface IDxfComponentService 
{
    /**
     * 查询dxf文件部件
     * 
     * @param componentId dxf文件部件ID
     * @return dxf文件部件
     */
    public DxfComponent selectDxfComponentById(Long componentId);

    /**
     * 查询dxf文件部件列表
     * 
     * @param drawDxfComp dxf文件部件
     * @return dxf文件部件集合
     */
    public List<DrawDxfComp> selectDrawDxfCompList(DrawDxfComp drawDxfComp);

    /***
     * 查询某个索引下的所有设备
     * @param dxfComponent
     * @return
     */
    public List<DxfComponent> selectDxfComponentList(DxfComponent dxfComponent);
    /**
     * 新增dxf文件部件
     * 
     * @param dxfComponent dxf文件部件
     * @return 结果
     */
    public int insertDxfComponent(DxfComponent dxfComponent);

    /**
     * 修改dxf文件部件
     * 
     * @param dxfComponent dxf文件部件
     * @return 结果
     */
    public int updateDxfComponent(DxfComponent dxfComponent);

    /**
     * 批量删除dxf文件部件
     * 
     * @param ids 需要删除的数据ID
     * @return 结果
     */
    public int deleteDxfComponentByIds(String ids);

    /**
     * 删除dxf文件部件信息
     * 
     * @param componentId dxf文件部件ID
     * @return 结果
     */
    public int deleteDxfComponentById(Long componentId);

    /***
     * 实现设备信息的圈定
     * @param componentId
     * @return 返回dxf的路径
     */
    public String drawCircleService(Long componentId)  throws Exception ;

}
